package com.prs.crm.domain.sys;


import java.sql.Date;

import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.hibernate.annotations.Cascade;

import com.prs.crm.domain.Attachment;
import com.prs.crm.domain.BaseEntity;

/***
 * 
 * @author Yanghao
 *	2012-7-30 9:34:16 账户设置
 */
@Entity
@Table(name="sys_accountset")
public class AccountSet extends BaseEntity{

	private static final long serialVersionUID = 1L;
	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	private Integer id;
	@ManyToOne
	private SysDepartment sysDepartment;
	@ManyToOne
	private PermissionGroup permissionGroup;
	/**用户Id*/
	private String userId;
	/**用户姓名*/
	private String name;
	/**登陆密码*/
	private String password;
	/**性别*/
	private String sex;
	/**备注*/
	private String remark;
	/**是否允许个人修改签章*/
	private Boolean updateSignature;
	/**签章文件*/
	@ManyToOne(fetch=FetchType.LAZY)
	@Cascade({org.hibernate.annotations.CascadeType.ALL,org.hibernate.annotations.CascadeType.DELETE_ORPHAN})
	private Attachment attach;
	/**签章图片*/
	@ManyToOne(fetch=FetchType.LAZY)
	@Cascade({org.hibernate.annotations.CascadeType.ALL,org.hibernate.annotations.CascadeType.DELETE_ORPHAN})
	private Attachment attach1;
	/**允许发送给全体用户*/
	private Boolean sendAllUser;
	/**是否限制最大人数*/
	private Boolean limitPersonNum;
	/**人数*/
	private Integer personNum; 
	/**登陆模式是否是用Ip认证*/
	private Boolean useIpLogin;
	/**ip地段*/
	private String ip1;
	private String ip2;
	/**使用内网认证*/
	private Boolean nwApprove;
	/**使用usb key登陆*/
	private Boolean useUsb;
	/**个人考勤是否使用IP认证*/
	private Boolean useIpPersonal;
	private String ip3;
	private String ip4;
	/**个人文件柜可用空间*/
	private String fileUseSpace;
	/**电子邮件可用空间*/
	private String emailUseSpace;
	/**上传最大容量*/
	private String uploadMaxVolume;
	/**允许使用OA助手*/
	private Boolean oaHelper;
	private Integer refreshRate;
	
	/*****弹出消息设置****/
	/**是否弹出新闻*/
	private Boolean news;
	/**是否弹出通知*/
	private Boolean inform;
	/**是否弹出公告*/
	private Boolean notice;
	/**是否弹出短消息*/
	private Boolean shortMessage;
	/**是否弹出文件提醒*/
	private Boolean file;
	/**是否弹出文件更新提醒*/
	private Boolean updateFile; 
	/**是否弹出日程提醒*/
	private Boolean schedule;
	/**是否弹出任务提醒*/
	private Boolean task;
	/**是否弹出领导邮箱提醒*/
	private Boolean leadMail;
	/**是否弹出审批消息提醒*/
	private Boolean AppMessage;
	/**是否弹出公文阅读提醒*/
	private Boolean gongwen;
	/**是否允许用户修改以上设置项目*/
	private Boolean updataUserAll;
	/*****用户信息****/
	/**生日*/
	private Date birthday;
	/**头像*/
	@ManyToOne(fetch=FetchType.LAZY)
	@Cascade({org.hibernate.annotations.CascadeType.ALL,org.hibernate.annotations.CascadeType.DELETE_ORPHAN})
	private Attachment attach3;
	/**办公电话*/
	private String workPhone;
	/**传真*/
	private String fax;
	/**手机*/
	private String mobile;
	/**住宅电话*/
	private String housePhone;
	/**E-mail*/
	private String email;
	/**通信地址*/
	private String postcode;
	/**激活状态  0为激活  1为不激活*/
	private Integer type;
	private String personName;
	private String personNmaeId;
	public String getPersonName() {
		return personName;
	}
	public void setPersonName(String personName) {
		this.personName = personName;
	}
	public String getPersonNmaeId() {
		return personNmaeId;
	}
	public void setPersonNmaeId(String personNmaeId) {
		this.personNmaeId = personNmaeId;
	}
	public Integer getType() {
		return type;
	}
	public void setType(Integer type) {
		this.type = type;
	}
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public SysDepartment getSysDepartment() {
		return sysDepartment;
	}
	public void setSysDepartment(SysDepartment sysDepartment) {
		this.sysDepartment = sysDepartment;
	}
	public PermissionGroup getPermissionGroup() {
		return permissionGroup;
	}
	public void setPermissionGroup(PermissionGroup permissionGroup) {
		this.permissionGroup = permissionGroup;
	}
	public String getUserId() {
		return userId;
	}
	public void setUserId(String userId) {
		this.userId = userId;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	public Boolean getUpdateSignature() {
		return updateSignature;
	}
	public void setUpdateSignature(Boolean updateSignature) {
		this.updateSignature = updateSignature;
	}
	public Attachment getAttach() {
		return attach;
	}
	public void setAttach(Attachment attach) {
		this.attach = attach;
	}
	public Attachment getAttach1() {
		return attach1;
	}
	public void setAttach1(Attachment attach1) {
		this.attach1 = attach1;
	}
	public Boolean getSendAllUser() {
		return sendAllUser;
	}
	public void setSendAllUser(Boolean sendAllUser) {
		this.sendAllUser = sendAllUser;
	}
	public Boolean getLimitPersonNum() {
		return limitPersonNum;
	}
	public void setLimitPersonNum(Boolean limitPersonNum) {
		this.limitPersonNum = limitPersonNum;
	}
	public Integer getPersonNum() {
		return personNum;
	}
	public void setPersonNum(Integer personNum) {
		this.personNum = personNum;
	}
	public Boolean getUseIpLogin() {
		return useIpLogin;
	}
	public void setUseIpLogin(Boolean useIpLogin) {
		this.useIpLogin = useIpLogin;
	}
	public String getIp1() {
		return ip1;
	}
	public void setIp1(String ip1) {
		this.ip1 = ip1;
	}
	public String getIp2() {
		return ip2;
	}
	public void setIp2(String ip2) {
		this.ip2 = ip2;
	}
	public Boolean getNwApprove() {
		return nwApprove;
	}
	public void setNwApprove(Boolean nwApprove) {
		this.nwApprove = nwApprove;
	}
	public Boolean getUseUsb() {
		return useUsb;
	}
	public void setUseUsb(Boolean useUsb) {
		this.useUsb = useUsb;
	}
	public Boolean getUseIpPersonal() {
		return useIpPersonal;
	}
	public void setUseIpPersonal(Boolean useIpPersonal) {
		this.useIpPersonal = useIpPersonal;
	}
	public String getIp3() {
		return ip3;
	}
	public void setIp3(String ip3) {
		this.ip3 = ip3;
	}
	public String getIp4() {
		return ip4;
	}
	public void setIp4(String ip4) {
		this.ip4 = ip4;
	}
	public String getFileUseSpace() {
		return fileUseSpace;
	}
	public void setFileUseSpace(String fileUseSpace) {
		this.fileUseSpace = fileUseSpace;
	}
	public String getEmailUseSpace() {
		return emailUseSpace;
	}
	public void setEmailUseSpace(String emailUseSpace) {
		this.emailUseSpace = emailUseSpace;
	}
	public String getUploadMaxVolume() {
		return uploadMaxVolume;
	}
	public void setUploadMaxVolume(String uploadMaxVolume) {
		this.uploadMaxVolume = uploadMaxVolume;
	}
	public Boolean getOaHelper() {
		return oaHelper;
	}
	public void setOaHelper(Boolean oaHelper) {
		this.oaHelper = oaHelper;
	}
	public Integer getRefreshRate() {
		return refreshRate;
	}
	public void setRefreshRate(Integer refreshRate) {
		this.refreshRate = refreshRate;
	}
	public Boolean getNews() {
		return news;
	}
	public void setNews(Boolean news) {
		this.news = news;
	}
	public Boolean getInform() {
		return inform;
	}
	public void setInform(Boolean inform) {
		this.inform = inform;
	}
	public Boolean getNotice() {
		return notice;
	}
	public void setNotice(Boolean notice) {
		this.notice = notice;
	}
	public Boolean getShortMessage() {
		return shortMessage;
	}
	public void setShortMessage(Boolean shortMessage) {
		this.shortMessage = shortMessage;
	}
	public Boolean getFile() {
		return file;
	}
	public void setFile(Boolean file) {
		this.file = file;
	}
	public Boolean getUpdateFile() {
		return updateFile;
	}
	public void setUpdateFile(Boolean updateFile) {
		this.updateFile = updateFile;
	}
	public Boolean getSchedule() {
		return schedule;
	}
	public void setSchedule(Boolean schedule) {
		this.schedule = schedule;
	}
	public Boolean getTask() {
		return task;
	}
	public void setTask(Boolean task) {
		this.task = task;
	}
	public Boolean getLeadMail() {
		return leadMail;
	}
	public void setLeadMail(Boolean leadMail) {
		this.leadMail = leadMail;
	}
	public Boolean getAppMessage() {
		return AppMessage;
	}
	public void setAppMessage(Boolean appMessage) {
		AppMessage = appMessage;
	}
	public Boolean getGongwen() {
		return gongwen;
	}
	public void setGongwen(Boolean gongwen) {
		this.gongwen = gongwen;
	}
	public Boolean getUpdataUserAll() {
		return updataUserAll;
	}
	public void setUpdataUserAll(Boolean updataUserAll) {
		this.updataUserAll = updataUserAll;
	}
	public Date getBirthday() {
		return birthday;
	}
	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}
	public Attachment getAttach3() {
		return attach3;
	}
	public void setAttach3(Attachment attach3) {
		this.attach3 = attach3;
	}
	public String getWorkPhone() {
		return workPhone;
	}
	public void setWorkPhone(String workPhone) {
		this.workPhone = workPhone;
	}
	public String getFax() {
		return fax;
	}
	public void setFax(String fax) {
		this.fax = fax;
	}
	public String getMobile() {
		return mobile;
	}
	public void setMobile(String mobile) {
		this.mobile = mobile;
	}
	public String getHousePhone() {
		return housePhone;
	}
	public void setHousePhone(String housePhone) {
		this.housePhone = housePhone;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getPostcode() {
		return postcode;
	}
	public void setPostcode(String postcode) {
		this.postcode = postcode;
	}
}
